Inventory control system

ABSTRACT

An inventory control system. The inventory control system includes a terminal, wherein the terminal is configured to allow a user to enter a sale of an item. The inventory control system also includes a cabinet. The cabinet is configured to store the item and is in electronic communication with the terminal. The cabinet dispenses the item in response to the sale.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of and priority to U.S. ProvisionalPatent Application Ser. No. 61/883,038 filed on Sep. 26, 2014, whichapplication is incorporated herein by reference in its entirety.

This application is related to co-pending U.S. patent application Ser.No. 14/497,284, filed on Sep. 25, 2014, and entitled, “INVENTORYMONITORING SYSTEM”, which application is incorporated herein byreference in its entirety.

BACKGROUND OF THE INVENTION

Control of inventory within the service industry is a continual problem.In particular, a lot of item can be moved very quickly and transactionsare difficult to monitor. This presents many situations where employeescan lose track of items or where employees can steal items or gift themwithout any ability of owners or manager to identify sources of lossunless they happen to view the theft.

In addition, inventory in particular locations is hard to keep track of.Generally, in locations such as sports arenas where multiple saleslocations are spread throughout a venue, the inventory at each locationmust be checked manually. This means that either an authorized employeemust continually be checking inventory and restocking where needed oremployees must be counted on to accurately report inventory, once againopening the system up to potential fraud.

Accordingly, there is a need in the art for a system that canautomatically control inventory. Further, there is a need in the art forthe system to monitor removal of items by each employee to increaseemployee accountability. Moreover, there is a need for the system toprovide relevant reports that allow for better control of ordering andto maximize profitability.

BRIEF SUMMARY OF SOME EXAMPLE EMBODIMENTS

This Summary is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This Summary is not intended to identify key features oressential characteristics of the claimed subject matter, nor is itintended to be used as an aid in determining the scope of the claimedsubject matter.

One example embodiment includes an inventory control system. Theinventory control system includes a terminal, wherein the terminal isconfigured to allow a user to enter a sale of an item. The inventorycontrol system also includes a cabinet. The cabinet is configured tostore the item and is in electronic communication with the terminal. Thecabinet dispenses the item in response to the sale.

Another example embodiment includes an inventory control system. Theinventory control system includes a terminal, wherein the terminal isconfigured to allow a user to enter a sale of an item. The inventorycontrol system also includes a cabinet. The cabinet is configured tostore the item and is in electronic communication with the terminal. Thecabinet dispenses the item in response to the sale. The inventorycontrol system further includes a point of sale sever. The point of saleserver is in electronic communication with the terminal and the cabinetand is configured to manage the operation of the inventory controlsystem including managing inventory within the cabinet.

Another example embodiment includes a method of controlling inventoryusing an inventory control system. The method includes producing aninventory list which identifies items within a cabinet and completing asale of an item at a terminal. The method also includes releasing theitem from the cabinet and updating the inventory list to reflect thesale of the item.

These and other objects and features of the present invention willbecome more fully apparent from the following description and appendedclaims, or may be learned by the practice of the invention as set forthhereinafter.

BRIEF DESCRIPTION OF THE DRAWINGS

To further clarify various aspects of some example embodiments of thepresent invention, a more particular description of the invention willbe rendered by reference to specific embodiments thereof which areillustrated in the appended drawings. It is appreciated that thesedrawings depict only illustrated embodiments of the invention and aretherefore not to be considered limiting of its scope. The invention willbe described and explained with additional specificity and detailthrough the use of the accompanying drawings in which:

FIG. 1 illustrates an example of an inventory control system;

FIG. 2 illustrates an alternative example of an inventory controlsystem;

FIG. 3 is a flow chart illustrating a method of authorizing a sale anddispensing an item;

FIG. 4 is a flow chart illustrating an alternative method of authorizinga sale and dispensing an item;

FIG. 5 is a flowchart illustrating a method of controlling inventoryusing an inventory control system; and

FIG. 6 illustrates an example of a suitable computing environment inwhich the invention may be implemented.

DETAILED DESCRIPTION OF SOME EXAMPLE EMBODIMENTS

Reference will now be made to the figures wherein like structures willbe provided with like reference designations. It is understood that thefigures are diagrammatic and schematic representations of someembodiments of the invention, and are not limiting of the presentinvention, nor are they necessarily drawn to scale.

FIG. 1 illustrates an example of an inventory control system 100. Theinventory control system 100 can ensure that any items removed areproperly accounted for before they are removed and provided tocustomers. I.e., it does not require an “honor system” where employeescan remove items as desired but instead requires an employee to enter asale or transaction before a piece of inventory can be removed. Theinventory control system 100 can assist small businesses, corporatechains, hotels, stadium and concert venues or any other entity whichneeds to control inventory.

FIG. 1 shows that the inventory control system 100 can include a cabinet102. The cabinet 102 can be configured to store the desired items. Forexample, the cabinet 102 can store bottles, cans, foods, toiletries orany other desired item. The cabinet 102 can dispense the stored items inresponse to a sale, as described below. I.e., the cabinet 102 can storeand dispense the loaded items. The cabinet 102 can be sold separatelywith other parts sold as an add-on kit that allows the cabinet 102 to beconverted to an inventory control system 100. I.e., the cabinet 102 canbe separate from other parts (e.g., purchased as a cooler) and the otherparts (described below) can be used to convert the stand along cabinet102 to an inventory control system. As used in the specification and theclaims, the phrase “configured to” denotes an actual state ofconfiguration that fundamentally ties recited elements to the physicalcharacteristics of the recited structure. As a result, the phrase“configured to” reaches well beyond merely describing functionallanguage or intended use since the phrase actively recites an actualstate of configuration.

The cabinet 102 can include any desired hardware for implementing theinventory control system 100 functions. For example, the cabinet 102 caninclude built in computing systems. Likewise, the cabinet 102 caninclude any desired software for implementing the inventory controlsystem functions. For example, the cabinet 102 can include MICROS,FUTURE, ALOHA or any other desired software.

FIG. 1 also shows that the cabinet 102 can include a display 104. Thedisplay 104 can indicate the items available within the cabinet 102. Forexample, the display 104 can include individual item counts, which showsthe current inventory of each item. Additionally or alternatively, thedisplay 104 can include a single display which shows inventory as awhole within the cabinet 102.

FIG. 1 further shows that the cabinet 102 can include one or morewindows 106. The windows 106 can allow a user to visually inspectinventory or otherwise determine the presence of items within thecabinet 102. I.e., the windows 106 can allow the user to view itemswithin the cabinet 102. The cabinet 102 can include lighting or otherelements which allow for inspection through the window 106.

FIG. 1 additionally shows that the inventory control system 100 caninclude a keypad 108 on the cabinet 102. The keypad 108 can be used tocomplete a transaction, enter sale information (for example, via a cardreader), unlock the cabinet 102 for restocking or otherwise control theoperation of cabinet 102, as described below. For example, a user canenter a code which releases a particular item in response to a sale, asdescribed below. The code can include any desired code, such as anemployee number, transaction id number or sale id number.

FIG. 1 moreover shows that the inventory control system 100 can includea terminal 110. A terminal 110 is the place where a retail transactionis completed. I.e., the terminal 110 is the point at which a customermakes a payment to the merchant in exchange for goods or services orwhere the retailer can calculate the amount owed by the customer, enterthe customers payment amount and type, issue a receipt for thetransaction, close sales for a shift or day or complete any otherdesired transaction.

The terminal 110 in various retail industries can use customizedhardware and software as per their requirements. For example, retailersmay utilize weighing scales, scanners, electronic and manual cashregisters, electronic payment terminals (such as credit card readers),touch screen or other graphical user interfaces and any other of a widevariety of hardware and software available for use with the terminal110. E.g., a grocery or candy store may use a scale at the terminal 110,while bars and restaurants use software to customize the item or servicesold when a customer has a special meal or drink request.

One of skill in the art will appreciate that any desired software can beused at the terminal 110. For example, the terminal 110 can usedstandardized software such as OPOS and JavaPOS, both of which conform tothe UnifiedPOS standard led by The National Retail Foundation. OPOS (OLEfor POS) was the first commonly adopted standard and was created byMicrosoft, NCR Corporation, Epson and Fujitsu-ICL. OPOS is a COM-basedinterface compatible with all COM-enabled programming languages forMicrosoft Windows. OPOS was first released in 1996. JavaPOS wasdeveloped by Sun Microsystems, IBM, and NCR Corporation in 1997 andfirst released in 1999. JavaPOS is for Java what OPOS is for Windows,and thus largely platform independent. Other protocols which can be usedat the terminal 110 include: Logic Controls; Epson Esc/POS; UTCStandard; UTC Enhanced; AEDEX; ICD 2002; Ultimate; CD 5220; DSP-800; ADM787/788; HP or any other desired software.

FIG. 1 also shows that the inventory control system 100 can include apoint of sale (POS) server 112. The POS server 112 can include softwareor other instructions which control the operation of the cabinet 102 andthe terminal 110. For example, the POS server 112 can include anydesired computing system, such as a server, computer, laptop, tablet,smart phone, netbook or any other desired computing system. The POSserver 112 can monitor which cabinet 102 will dispense items (e.g., ifthe POS server 112 determines that an item is present in one cabinet 102but not in another cabinet 102, the POS server 112 can direct the userto the first cabinet 102). Additionally or alternatively, the POS server112 can make available reports, such as sale and inventory numbers, forthe totality of terminals 110 and cabinets 102 as described below.

Additionally or alternatively, the POS server 112 can manage all sales.For example, the POS server 112 can handle credit card transactions orother sales data by communicating with an outside payment service, suchas a bank or merchant services account. In addition, when a user logsonto a terminal 110 or cabinet 102 the POS server 112 can confirm theaccess and dispense the desired items from the cabinet 102. I.e., thePOS server 112 can ensure that each transaction is authorized and thatthe proper items are provided to customers.

The POS server 112 can allow allows input by owner, manager, orcorporate officers of all inventory ordered for each venue. I.e., if anitem is purchased, the total number of items is added to the currentnumber of the item and then counts down from the total, as well as thenumber in each cabinet, as the item is sold. For example, a price lookup (PLU) number can be assigned to each item in the cabinet 102 and thesame number will be assigned to the same items on the POS server 112 andat the terminal 110.

Additionally or alternatively, the POS server 112 can generate desiredreports for management of inventory. For example, the POS server 112 cansend notification messages on inventory ordering or ordering alerts whenan item runs low at each cabinet 102 or overall, allows reports to begenerated for each item sold detailing the item success by each employeeor at each venue, allow input for reports to be generated as to cost ofitem, price per item, profit margin for each item or any other desiredreport. The messages and/or reports can be sent via email, text message,alarms at the cabinet 102, the terminal 110 or the POS server 112 orthrough any other desired method.

One of skill in the art will understand that the cabinet 102, theterminal 110 and the POS server 112 can be in electronic communicationwith one another. This can allow a sale entered at the terminal 110 toresult in the release of inventory at the cabinet 102. For example, ifthe sale of a drink is entered at the terminal 110, the retailer canenter the desired drink and complete the sale. The POS server 112 canconfirm the payment information from the customer. The drink is thenreleased at the cabinet 102 where the retailer collects the drink totake to the customer and the POS server 112 updates the inventory listto reflect the sale of the item.

The electronic communication can occur via any desired mechanism. Forexample, the electronic communication can take place over a network. Thenetwork exemplarily includes the Internet, including a globalinternetwork formed by logical and physical connections between multiplewide area networks and/or local area networks and can optionally includethe World Wide Web (“Web”), including a system of interlinked hypertextdocuments accessed via the Internet. Alternately or additionally, thenetwork includes one or more cellular RF networks and/or one or morewired and/or wireless networks such as, but not limited to, 802.xxnetworks, Bluetooth access points, wireless access points, IP-basednetworks, cellular networks, or the like. For example, the network caninclude cloud based networking and computing. The network can alsoinclude servers that enable one type of network to interface withanother type of network.

One of skill in the art will further appreciate that one or more of theparts of the inventory control system 100 can be combined. For example,the POS server 112 can include a terminal 110 which is master to otherterminals 106. Additionally or alternatively, the terminal 110 can bemounted on the cabinet 102, allowing both to be placed in a singlelocation.

By way of example, a representative transaction using the system 100will be described. One of skill in the art will appreciate that theorder of the transaction or the portions of the system 100 used for eachstep of the transaction can be modified as desired. To begin thetransaction a user logs on to a terminal 110. The terminal 110 has anidentification of some kind. For example, the terminal 110 can beidentified by integer number, such as 07. The user then selects an itemat the cabinet 102. The item can be identified by position number,integer, PLU or any other desired identification. For this example, itis assumed that the user selects the item using an integer such as 04.Therefore, the user enters 0704 at the cabinet 102 to identify both theterminal 110 (07) and the item (04). The item is then dispensed from thecabinet 102 and the item and price appears on the terminal 110. The useris then responsible for ensuring that the item is paid for. Theinventory is automatically updated, at the POS server 112, allowing aselected manager to keep track of total inventory and inventory atindividual cabinets 102.

FIG. 2 illustrates an alternative example of an inventory control system200. The inventory control system 200 can allow users to directly enterinformation which completes payment at the terminal 110 and obtain itemsfrom the cabinet 102. I.e., the inventory control system 200 does nothave a POS server (such as the POS server 12 of FIG. 1) and any personwho so desires can make payment and retrieve inventory from the cabinet102.

FIG. 2 shows that the inventory control system 200 can include a cardreader 202. The card reader 202 can allow a user to directly enterpayment information. For example, the card reader 202 can read creditcard information or a hotel room key to direct payment to theappropriate persons. I.e., the inventory control system 200 can beplaced in a hotel and guests can swipe a key card which dispenses itemsand then bills the items to the guest's hotel room. Additionally oralternatively, the user could enter information via the keypad 106 toenter payment information, such as room number, or credit card number.

By way of example, a representative transaction using the system 200will be described. One of skill in the art will appreciate that theorder of the transaction or the portions of the system 200 used for eachstep of the transaction can be modified as desired. To begin thetransaction a guest logs on to a terminal 110. The log on can occurusing any desired method, such as identification of a room number or theentry of payment information. The terminal 110 has an identification ofsome kind. For example, the terminal 110 can be identified by integernumber, such as 07. The guest then selects an item at the cabinet 102.The item can be identified by position number, integer, PLU or any otherdesired identification. For this example, it is assumed that the guestselects the item using an integer such as 04. Therefore, the guestenters 0704 at the cabinet 102 to identify both the terminal 110 (07)and the item (04). The item is then dispensed from the cabinet 102 andthe item and price appears on the terminal 110 where the payment iscompleted. The inventory can be automatically updated at an externalsystem, such as a hotel computer, allowing a selected manager to keeptrack of total inventory and inventory at individual cabinets 102.

FIG. 3 is a flow chart illustrating a method 300 of authorizing a saleand dispensing an item. The method 300 can use an inventory controlsystem, such as the inventory control system 100 of FIG. 1 or theinventory control system 200 of FIG. 2. Therefore, the method 300 willbe described, exemplarily, with reference to the inventory controlsystem 100 of FIG. 1 or the inventory control system 200 of FIG. 2.Nevertheless, one of skill in the art can appreciate that the method 300can be used with systems other than the inventory control system 100 ofFIG. 1 or the inventory control system 200 of FIG. 2.

FIG. 3 shows that the method 300 can include allowing 302 an employee tolog onto a POS server. For example, the employee can be asked to enter apin number, password or other authorization manually. Additionally oralternatively, an employee can be identified automatically. Forinstance, the employee can be identified using biometrics (fingerprint,retina scan, etc.), by swiping an identification card, wirelessly (byplacing a contactless card or fob near a scanner) or through any otherdesired method. Once the employee is logged onto the POS server he/sheis authorized to remove items from the cabinet and/or enter salesinformation at a terminal.

FIG. 3 shows that the method 300 can include allowing 304 an employee tolog onto a cabinet. For example, the employee can be asked to enter apin number, password or other authorization manually. Additionally oralternatively, an employee can be identified automatically. Forinstance, the employee can be identified using biometrics (fingerprint,retina scan, etc.), by swiping an identification card, wirelessly (byplacing a contactless card or fob near a scanner) or through any otherdesired method. Once the employee is logged onto the cabinet then anyitems removed are added to his/her account. I.e., the items are added toa report of items removed by that employee (which can later be comparedto entered sales).

FIG. 3 also shows that the method 300 can include dispensing 306 theitem to the employee. The employee is then responsible for, and can beheld accountable for, all items dispensed 306 under the employee's idnumber. I.e., the responsibility is then on the employee to ensure thatpayment is received for the item from the customer. The employee mayserve the item to the customer before or after payment is made.Likewise, an employee can return an unsold item which is then creditedto the employee and not counted as a sale.

FIG. 3 also shows that the method 300 can include identifying 308 thedispensed item. I.e., the cabinet can automatically identify 308 theitem that the employee selected. For example, the cabinet can determinethe space in which the item was stored and then identify 308 thedispensed item as the item that was previously located in that space orcan determine that an area of the cabinet that was accessed was used tostore multiple items of one type. Additionally or alternatively, theemployee may have a touch screen or other graphical employee interfaceand select an icon for an item, can enter a PLU number, can identify theitem by name, can select the item from a list or can identify 308 theitem in any other desired manner.

FIG. 3 further shows that the method 300 can include sending 310 thepurchase order to the terminal. I.e., once the item has been dispensed,the terminal is instructed to record the item to allow the employee tocharge the customer. For example, the charge information can be requiredimmediately from the employee or can be added to a bill to be identifiedby the employee or all items taken by an employee can be compared to allitems charged to customers by an employee (e.g., at the end of theemployee's shift).

FIG. 3 additionally shows that the method 300 can include sending 312the purchase order to the POS server. I.e., the entirety of thetransaction, including the employee identification information and theitem that was purchased can be sent to the POS server by the cabinet.This can allow the POS server to compile reports and track inventory, asdescribed above. Additionally or alternatively, the POS server can beused to complete the purchase. For example, the POS server can connectto an outside payment service in order to complete payment.

One skilled in the art will appreciate that, for this and otherprocesses and methods disclosed herein, the functions performed in theprocesses and methods may be implemented in differing order.Furthermore, the outlined steps and operations are only provided asexamples, and some of the steps and operations may be optional, combinedinto fewer steps and operations, or expanded into additional steps andoperations without detracting from the essence of the disclosedembodiments.

FIG. 4 is a flow chart illustrating an alternative method 400 ofauthorizing a sale and dispensing an item. The method 400 can use aninventory control system, such as the inventory control system 100 ofFIG. 1 or the inventory control system 200 of FIG. 2. Therefore, themethod 400 will be described, exemplarily, with reference to theinventory control system 100 of FIG. 1 or the inventory control system200 of FIG. 2. Nevertheless, one of skill in the art can appreciate thatthe method 400 can be used with systems other than the inventory controlsystem 100 of FIG. 1 or the inventory control system 200 of FIG. 2.

FIG. 4 shows that the method 400 can include allowing 402 a customer tolog onto a cabinet. For example, the customer can be asked to enter apin number, password or other authorization manually. Additionally oralternatively, a customer can be identified automatically. For instance,the customer can be identified using biometrics (fingerprint, retinascan, etc.), by swiping an identification card, wirelessly (by placing acontactless card or fob near a scanner) or through any other desiredmethod. Allowing 402 a customer to log onto a cabinet can includeverifying the age or identity of the customer. For example, the customermay have to have id that will allow his/her age to be verifiedelectronically or an employee may need to confirm age and enterauthorization.

FIG. 4 also shows that the method 400 can include dispensing 404 theitem to the customer. The customer is then responsible for, and can beheld accountable for, all items dispensed 404 under the customer's idnumber. I.e., the responsibility is then on the customer to ensure thatpayment is received for the item from the customer. The customer mayserve the item to the customer before or after payment is made.

FIG. 4 also shows that the method 400 can include identifying 406 thedispensed item. I.e., the cabinet can automatically identify 406 theitem that the customer selected. For example, the cabinet can determinethe space in which the item was stored and then identify 406 thedispensed item as the item that was previously located in that space orcan determine that an area of the cabinet that was accessed was used tostore multiple items of one type. Additionally or alternatively, thecustomer may have a touch screen or other graphical customer interfaceand select an icon for an item, can enter a PLU number, can identify theitem by name, can select the item from a list or can identify 406 theitem in any other desired manner.

FIG. 4 further shows that the method 400 can include sending 408 thepurchase order to the terminal. I.e., once the item has been dispensed,the terminal is instructed to record the item to allow the customer tocharge the customer. For example, the charge information can be requiredimmediately from the customer or can be added to a bill to be identifiedby the customer or all items taken by a customer can be compared to allitems charged to customers by a customer (e.g., at the end of thecustomer's shift).

FIG. 4 additionally shows that the method 400 can include sending 410the purchase order to the POS server. I.e., the entirety of thetransaction, including the customer identification information and theitem that was purchased can be sent to the POS server by the cabinet.This can allow the POS server to compile reports and track inventory, asdescribed above. Additionally or alternatively, the POS server can beused to complete the purchase. For example, the POS server can connectto an outside payment service in order to complete payment.

FIG. 5 is a flowchart illustrating a method 500 of controlling inventoryusing an inventory control system. The method 500 can be implemented bya POS server or terminal. I.e., the method 500 can allow a portion ofthe inventory control system to keep track of inventory and notifyingselected users if an item needs to be restocked or some other action isrequired.

FIG. 5 shows that the method 500 can include receiving 502 item to besold. The item can be received in a business's usual method. I.e., anemployee, such as a manager, can be authorized to check the incomingitem and confirm that it is in response to an order or business needs.For example, the item can be received from a wholesale, distributer orretailer.

FIG. 5 also shows that the method 500 can include identifying 504 theitem to be stocked. I.e., the authorized user can enter into the systemthe item which will be stocked in the inventory control system. Forexample, the user can scan a bar code on the item to automatically enterthe item information, the user may have a touch screen or othergraphical user interface and select an icon for an item, can enter a PLUnumber, can identify the item by name, can select the item from a listor can identify 504 the item in any other desired manner. The item isthen added to an inventory list which shows all items and the locationof the item, if necessary.

FIG. 5 further shows that the method 500 can include stocking 506 theitem. The inventory can be stocked 506 at any desired location. Forexample, the inventory can be stocked 506 in a cabinet, vending machineor other machine that can dispense the items when purchased, asdescribed above. The item is then updated on the inventory list as beinglocated at that particular location.

FIG. 5 additionally shows that the method 500 can include identifying508 the removal of an item. I.e., as each item is sold, either via anemployee or directly to the customer, the item is identified and theinventory list is updated. I.e., the number of total item is decrementedand the number of item at the location from which it is removed isdecremented.

FIG. 5 moreover shows that the method 500 can include producing 510 areport. The report can include any desired information. For example, thereport can include the total of a particular item, the total of allitems, the location of items, total sales, rate of sale, profitabilityof items, sales by employee, sale by customer or any other report whichcan help increase sales or anticipate needs.

FIG. 5 also shows that the method 500 can include alerting 512 selectedusers if action is required. The alert 512 can include any desiredmethod of contacting selected personnel if an action is required. Forexample, the contact method can include email, Twitter, text messages orany other method of contact. Additionally or alternatively, the alert512 can include an audio or visual signal. For example, the alert 512can include a pop-up message, an audio alarm, flashing lights or anyother desired signal. One of skill in the art will appreciate thatmultiple alerts may be used, if desired.

The alert 512 can be in response to any predetermined situation. Forexample, the alert 512 can include information about the operation ofthe inventory control system. E.g., if a terminal or cabinet losesfunctionality, a user can be alerted 512 to check the functionality.Additionally or alternatively, if the number of items drops below athreshold amount, either based on actual items or based on timeremaining in light of the rate of distribution, a user can be alerted512 that additional items should be stocked.

FIG. 6, and the following discussion, is intended to provide a brief,general description of a suitable computing environment in which theinvention may be implemented. Although not required, the invention willbe described in the general context of computer-executable instructions,such as program modules, being executed by computers in networkenvironments. Generally, program modules include routines, programs,objects, components, data structures, etc. that performs particulartasks or implement particular abstract data types. Computer-executableinstructions, associated data structures, and program modules representexamples of the program code means for executing steps of the methodsdisclosed herein. The particular sequence of such executableinstructions or associated data structures represents examples ofcorresponding acts for implementing the functions described in suchsteps.

One of skill in the art will appreciate that the invention may bepracticed in network computing environments with many types of computersystem configurations, including personal computers, hand-held devices,mobile phones, multi-processor systems, microprocessor-based orprogrammable consumer electronics, network PCs, minicomputers, mainframecomputers, and the like. The invention may also be practiced indistributed computing environments where tasks are performed by localand remote processing devices that are linked (either by hardwiredlinks, wireless links, or by a combination of hardwired or wirelesslinks) through a communications network. In a distributed computingenvironment, program modules may be located in both local and remotememory storage devices.

With reference to FIG. 6, an example system for implementing theinvention includes a general purpose computing device in the form of aconventional computer 620, including a processing unit 621, a systemmemory 622, and a system bus 623 that couples various system componentsincluding the system memory 622 to the processing unit 621. It should benoted however, that as mobile phones become more sophisticated, mobilephones are beginning to incorporate many of the components illustratedfor conventional computer 620. Accordingly, with relatively minoradjustments, mostly with respect to input/output devices, thedescription of conventional computer 620 applies equally to mobilephones. The system bus 623 may be any of several types of bus structuresincluding a memory bus or memory controller, a peripheral bus, and alocal bus using any of a variety of bus architectures. The system memoryincludes read only memory (ROM) 624 and random access memory (RAM) 625.A basic input/output system (BIOS) 626, containing the basic routinesthat help transfer information between elements within the computer 620,such as during start-up, may be stored in ROM 624.

The computer 620 may also include a magnetic hard disk drive 627 forreading from and writing to a magnetic hard disk 639, a magnetic diskdrive 628 for reading from or writing to a removable magnetic disk 629,and an optical disc drive 630 for reading from or writing to removableoptical disc 631 such as a CD-ROM or other optical media. The magnetichard disk drive 627, magnetic disk drive 628, and optical disc drive 630are connected to the system bus 623 by a hard disk drive interface 632,a magnetic disk drive-interface 633, and an optical drive interface 634,respectively. The drives and their associated computer-readable mediaprovide nonvolatile storage of computer-executable instructions, datastructures, program modules and other data for the computer 620.Although the exemplary environment described herein employs a magnetichard disk 639, a removable magnetic disk 629 and a removable opticaldisc 631, other types of computer readable media for storing data can beused, including magnetic cassettes, flash memory cards, digitalversatile discs, Bernoulli cartridges, RAMs, ROMs, and the like.

Program code means comprising one or more program modules may be storedon the hard disk 639, magnetic disk 629, optical disc 631, ROM 624 orRAM 625, including an operating system 635, one or more applicationprograms 636, other program modules 637, and program data 638. A usermay enter commands and information into the computer 620 throughkeyboard 640, pointing device 642, or other input devices (not shown),such as a microphone, joy stick, game pad, satellite dish, scanner,motion detectors or the like. These and other input devices are oftenconnected to the processing unit 621 through a serial port interface 646coupled to system bus 623. Alternatively, the input devices may beconnected by other interfaces, such as a parallel port, a game port or auniversal serial bus (USB). A monitor 647 or another display device isalso connected to system bus 623 via an interface, such as video adapter648. In addition to the monitor, personal computers typically includeother peripheral output devices (not shown), such as speakers andprinters.

The computer 620 may operate in a networked environment using logicalconnections to one or more remote computers, such as remote computers649 a and 649 b. Remote computers 649 a and 649 b may each be anotherpersonal computer, a server, a router, a network PC, a peer device orother common network node, and typically include many or all of theelements described above relative to the computer 620, although onlymemory storage devices 650 a and 650 b and their associated applicationprograms 636 a and 636 b have been illustrated in FIG. 6. The logicalconnections depicted in FIG. 6 include a local area network (LAN) 651and a wide area network (WAN) 652 that are presented here by way ofexample and not limitation. Such networking environments are commonplacein office-wide or enterprise-wide computer networks, intranets and theInternet.

When used in a LAN networking environment, the computer 620 can beconnected to the local network 651 through a network interface oradapter 653. When used in a WAN networking environment, the computer 620may include a modem 654, a wireless link, or other means forestablishing communications over the wide area network 652, such as theInternet. The modem 654, which may be internal or external, is connectedto the system bus 623 via the serial port interface 646. In a networkedenvironment, program modules depicted relative to the computer 620, orportions thereof, may be stored in the remote memory storage device. Itwill be appreciated that the network connections shown are exemplary andother means of establishing communications over wide area network 652may be used.

The present invention may be embodied in other specific forms withoutdeparting from its spirit or essential characteristics. The describedembodiments are to be considered in all respects only as illustrativeand not restrictive. The scope of the invention is, therefore, indicatedby the appended claims rather than by the foregoing description. Allchanges which come within the meaning and range of equivalency of theclaims are to be embraced within their scope.

What is claimed is:
 1. An inventory control system, the inventorycontrol system comprising: a cabinet, wherein the cabinet: is configuredto store a physical item; is in electronic communication with aterminal; and dispenses the physical item in response to a sale; and theterminal, wherein the terminal: includes a computer system, the computersystem comprising: one or more hardware processors; system memorycoupled to the one or more hardware processors, the system memorystoring instructions that are executable by the one or more hardwareprocessors; the one or more hardware processors executing theinstructions stored in the system memory to manage inventory of the oneor more physical items stored in the electronic cabinet, including thefollowing: allow an employee to enter the sale of the physical item;confirm the identity of the employee; receive an electroniccommunication from the cabinet, the signal indicative of the cabinetdispensing the physical item in response to the sale; and update aninventory of the cabinet in response to the signal.
 2. The system ofclaim 1, wherein the cabinet includes a display configured to indicateinventory within the cabinet.
 3. The system of claim 1, wherein thecabinet includes a keypad configured to control one or more functions ofthe cabinet.
 4. The system of claim 3, wherein the keypad is configuredto allow a user to enter a code to complete a transaction.
 5. The systemof claim 4, wherein the code includes at least one of: an employeeidentification number; a transaction identification number; or a saleidentification number.
 6. The system of claim 1, wherein the terminal isconfigured to identify at least one of: the physical item in thetransaction; a position of the physical item in the cabinet; a PLU; aterminal identification number; or an employee identification number. 7.The system of claim 1, wherein the terminal includes a card reader. 8.The system of claim 1, wherein the physical item includes at least oneof: a bottle; a can; a food; or a toiletry.
 9. The system of claim 1,wherein confirm the identity of the employee includes the employeeentering a pin number.
 10. The system of claim 1, wherein confirm theidentity of the employee includes automatic identification of theemployee.
 11. An inventory control system, the inventory control systemcomprising: an electronic cabinet, wherein the electronic cabinet: isconfigured to physically store one or more dispensable items forpurchase, wherein the dispensable item includes at least one of: abottle; or a can; is in electronic communication with a terminal; anddispenses the dispensable item in response to a sale; the terminal,wherein the terminal: includes a computer system, the computer systemcomprising: one or more hardware processors; system memory coupled tothe one or more hardware processors, the system memory storinginstructions that are executable by the one or more hardware processors;the one or more hardware processors executing the instructions stored inthe system memory to manage inventory of the one or more dispensableitems stored in the electronic cabinet, including the following: allowan employee to enter the sale of the dispensable item; and confirm theidentity of the employee; receive an electronic communication from theelectronic cabinet, the signal indicative of the electronic cabinetdispensing the dispensable item in response to the sale; a point of salesever server: includes a computer system, the computer systemcomprising: one or more hardware processors; system memory coupled tothe one or more hardware processors, the system memory storinginstructions that are executable by the one or more hardware processors;the one or more hardware processors executing the instructions stored inthe system memory to manage inventory of the one or more dispensableitems stored in the electronic cabinet, including the following:electronically communicate with the terminal and the electronic cabinet;and receive an electronic communication from the terminal, the signalindicative of the terminal completing a sale of one of the dispensableitems; transmit a signal to the electronic cabinet to dispense the oneof the dispensable items; and receive an electronic communication fromthe electronic cabinet, the signal indicative of the electronic cabinetdispensing the dispensable item in response to the sale; attribute thepurchase of the dispensable item to an employee; and manage theoperation of the inventory control system including: managing inventorywithin the electronic cabinet, wherein managing inventor within theelectronic cabinet includes:  updating an inventory of the electroniccabinet in response to the signal.
 12. The system of claim 11, whereinthe point of sale server is configured to communicate with an outsidepayment service.
 13. The system of claim 12, wherein the outside paymentservice includes a merchant services account.
 14. The system of claim11, wherein the point of sale server is configured to produce a report.15. The system of claim 14, wherein the report includes at least one of:total number of a particular dispensable item; the total number of alldispensable items; total number of a particular dispensable item withinthe electronic cabinet; the total number of all dispensable items withinthe electronic cabinet; the location of a dispensable item; total sales;rate of sale; profitability of dispensable items; sales by employee; orsale by customer.
 16. A method of controlling inventory using aninventory control system, the method comprising: producing an inventorylist which identifies dispensable items within the electronic cabinet,wherein the dispensable item includes at least one of: a bottle; or acan; confirming an identity of an employee; releasing a dispensable itemfrom the electronic cabinet; completing a sale of the dispensable itemto the employee at the terminal; updating the inventory list to reflectthe sale of the dispensable item.
 17. The system of claim 16 furthercomprising providing an alert in response to a predetermined condition.18. The system of claim 17, wherein the predetermined condition includesthe number of a dispensable item dropping below a threshold amount. 19.The system of claim 17, wherein the predetermined condition includes aloss in functionality in one or more elements of the inventory controlsystem.
 20. The system of claim 17, wherein the alert is sent to a userthrough at least one of: email; text message; pop-up message; audiosignal; or visual signal.